package com.atomikos.icatch;

import com.atomikos.finitestates.Stateful;
import java.util.Properties;
import java.util.Stack;

public abstract interface CompositeTransaction
  extends Stateful
{
  public abstract Object getState();
  
  public abstract boolean isRoot();
  
  public abstract Stack getLineage();
  
  public abstract String getTid();
  
  public abstract boolean isAncestorOf(CompositeTransaction paramCompositeTransaction);
  
  public abstract boolean isDescendantOf(CompositeTransaction paramCompositeTransaction);
  
  public abstract boolean isRelatedTransaction(CompositeTransaction paramCompositeTransaction);
  
  public abstract boolean isSameTransaction(CompositeTransaction paramCompositeTransaction);
  
  public abstract CompositeCoordinator getCompositeCoordinator()
    throws SysException;
  
  public abstract RecoveryCoordinator addParticipant(Participant paramParticipant)
    throws SysException, IllegalStateException;
  
  public abstract void registerSynchronization(Synchronization paramSynchronization)
    throws IllegalStateException, SysException;
  
  public abstract void addSubTxAwareParticipant(SubTxAwareParticipant paramSubTxAwareParticipant)
    throws SysException, IllegalStateException;
  
  public abstract boolean isSerial();
  
  /**
   * @deprecated
   */
  public abstract TransactionControl getTransactionControl();
  
  public abstract boolean isLocal();
  
  public abstract CompositeTransaction createSubTransaction()
    throws SysException, IllegalStateException;
  
  public abstract void setSerial()
    throws IllegalStateException, SysException;
  
  /**
   * @deprecated
   */
  public abstract int getLocalSubTxCount();
  
  public abstract void setTag(HeuristicMessage paramHeuristicMessage);
  
  public abstract Extent getExtent();
  
  public abstract long getTimeout();
  
  public abstract void setRollbackOnly();
  
  public abstract void commit()
    throws HeurRollbackException, HeurMixedException, HeurHazardException, SysException, SecurityException, RollbackException;
  
  public abstract void rollback()
    throws IllegalStateException, SysException;
  
  public abstract void setProperty(String paramString1, String paramString2);
  
  public abstract String getProperty(String paramString);
  
  public abstract Properties getProperties();
}


/* Location:           C:\myfile\mysoft\apache-maven-3.5.0-bin\apache-maven-3.5.0\myrep\com\atomikos\transactions-api\3.7.0\transactions-api-3.7.0.jar
 * Qualified Name:     com.atomikos.icatch.CompositeTransaction
 * JD-Core Version:    0.7.0.1
 */